﻿using Shop.Model.DB;
using Shop.Model.Goods;
using Shop.RemoteModel.SpuGoods.Model;
using WeDonekRpc.Model;

namespace Shop.Repository
{
    public interface IGoodsRepository : IShopBaseRepository<DBGoods, long>
    {
        Result[] Query<Result> (GoodsQuery query, IBasicPage paging, out int count) where Result : class;
        long Add (GoodsSetArg arg);
        void Drop (long id);
        void Public (long id, short num, decimal price );
        void Offshelf (long id);
        void PublicComplete (long id);
        Result[] GetTops<Result> ( TopGetArg arg ) where Result : class, new();
    }
}